home *** CD-ROM | disk | FTP | other *** search
/ Network Support Library / RoseWare - Network Support Library.iso / logbatch / hommap.inc < prev    next >
Text File  |  1991-07-16  |  915b  |  28 lines

  1. ; This routine sets two DOS environment variables:
  2. ;   USERNAME   contains the full LOGIN_NAME
  3. ;   USERNAME_8 contains the first 8 characters of LOGIN_NAME
  4. SET USERNAME = "%LOGIN_NAME"
  5. TEMP SET WORKSTR = "%LOGIN_NAME"
  6. TEMP SET COUNTER = "0"
  7. ; Count length of LOGIN_NAME
  8. COUNTLOOP:
  9. IF <WORKSTR> == "" THEN GOTO COUNTDONE
  10. TEMP SET COUNTER = <COUNTER> + "1"
  11. TEMP SET WORKSTR = <WORKSTR> >> 1
  12. GOTO COUNTLOOP
  13. COUNTDONE:
  14. ; Check to see if length is more than 8
  15. SET USERNAME_8 = <USERNAME>
  16. IF VALUE <COUNTER> <= "8" THEN GOTO TRUNCDONE
  17. ; Yes, it's more than 8, chop it off
  18. TEMP SET COUNTER = <COUNTER> - "8"
  19. TRUNCLOOP:
  20. IF VALUE <COUNTER> == "0" THEN GOTO TRUNCDONE
  21. TEMP SET COUNTER = <COUNTER> - "1"
  22. SET USERNAME_8 = <USERNAME_8> >> 1
  23. GOTO TRUNCLOOP
  24. TRUNCDONE:
  25. ; Now USERNAME_8 has been truncated to 8 characters or less, map the user's
  26. ; home directory
  27. MAP INS ROOT S16:=SYS:HOME/%<USERNAME_8>
  28.